package per.hnvcam.searchext.data.dao;

import java.util.List;

import per.hnvcam.searchext.data.model.Rule;

public interface RuleDAO {
   @SuppressWarnings("rawtypes")
   List listAll();

   Rule findById(long id);

   Rule findByClass(String classifiedClass);

   @SuppressWarnings("rawtypes")
   List findAllBaseRules();

   List findAllClassifyRules(boolean includeManualRules);

   List findAllManualRules();

   int getSizeOfClassifyRules(boolean includeManualRules);

   void save(Rule rule);

   void saveOrUpdate(Rule rule);

   void bulkSave(List<Rule> rules);

   void bulkSaveOrUpdate(List<Rule> rules);

   void updateRuleStart();

   void removeAllBaseRules();

   void removeAllClassifyRules();

   void removeAllManualRules();
}
